/**
 * 
 */
package modelo.entidade;

/**
 * @author DANILO
 *
 */
public class Banda {
	
	private long id_banda;
	private String nm_banda;
	private String genero_banda;
	
	private Contato contato;
	
	//Construtores***
		
	public Banda(long id_banda, String nm_banda, String genero_banda,
			Contato contato) {
		super();
		this.id_banda = id_banda;
		this.nm_banda = nm_banda;
		this.genero_banda = genero_banda;
		this.contato = contato;
	}
	
	
	public Banda(String nm_banda, String genero_banda) {
		super();
		this.nm_banda = nm_banda;
		this.genero_banda = genero_banda;
	}
	
	public Banda(long id_banda, String nm_banda, String genero_banda) {
		super();
		this.id_banda = id_banda;
		this.nm_banda = nm_banda;
		this.genero_banda = genero_banda;
	}
	
	public Banda(long id_banda) {
		super();
		this.id_banda = id_banda;
	}
	//Construtores*

	// Getters and setters ***
	
	public Contato getContato() {
		return contato;}
	public void setContato(Contato contato) {
		this.contato = contato;
	}
	public long getId_banda() {
		return id_banda;
	}
	public void setId_banda(long id_banda) {
		this.id_banda = id_banda;
	}
	public String getNm_banda() {
		return nm_banda;
	}
	public void setNm_banda(String nm_banda) {
		this.nm_banda = nm_banda;
	}
	public String getGenero_banda() {
		return genero_banda;
	}
	public void setGenero_banda(String genero_banda) {
		this.genero_banda = genero_banda;
	}
	// Getters and setters *
	
	
	//hashCode***
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((contato == null) ? 0 : contato.hashCode());
		result = prime * result
				+ ((genero_banda == null) ? 0 : genero_banda.hashCode());
		result = prime * result + (int) (id_banda ^ (id_banda >>> 32));
		result = prime * result
				+ ((nm_banda == null) ? 0 : nm_banda.hashCode());
		return result;
			
		}
	//hashCode*
	
	//equals***
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Banda other = (Banda) obj;
		if (contato == null) {
			if (other.contato != null)
				return false;
		} else if (!contato.equals(other.contato))
			return false;
		if (genero_banda == null) {
			if (other.genero_banda != null)
				return false;
		} else if (!genero_banda.equals(other.genero_banda))
			return false;
		if (id_banda != other.id_banda)
			return false;
		if (nm_banda == null) {
			if (other.nm_banda != null)
				return false;
		} else if (!nm_banda.equals(other.nm_banda))
			return false;
		return true;
	}
	//equals*
	
	//toString***
	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("Banda [id_banda=").append(id_banda)
				.append(", nm_banda=").append(nm_banda)
				.append(", genero_banda=").append(genero_banda)
				.append(", contato=").append(contato).append("]");
		return builder.toString();
	}
	//toString*
	
}
